Additive manufacturing by light-emitting micro devices in photosensitive material

ABSTRACT

A method, computer program product, and system. The embodiments include a method for three-dimensional printing of an object. The method provides for one or more processors to receive image data of an object to print. The one or more processors receive a position of a light-emitting robot inserted within photosensitive material. The one or more processors initiate movement of the light-emitting robot within the photosensitive material. The one or more processors control navigation of the light-emitting robot through the photosensitive material, based on continual feedback of the position of the light-emitting robot within photosensitive material and the received image data of the object to print, and the one or more processors control activation and deactivation of emitted light of the light-emitting robot, based on the image data of the object to print, wherein the emitted light of the light-emitting robot solidifies the photosensitive material.

FIELD OF THE INVENTION

The present invention relates generally to the field of additivemanufacturing, and more particularly to three-dimensional printing bycontrol of light-emitting maneuverable devices inserted intophotosensitive material.

BACKGROUND OF THE INVENTION

Additive manufacturing includes an industry of processes andtechnologies that join materials to produce objects fromthree-dimensional (3D) image data of a model. A prevalent technique ofadditive manufacturing is referred to as 3D printing and includesbuilding an object by deposition of material layer-by-layer, usingmaterials available in fine powder form. Deposition of material layersis controlled by data from image scanning of the object, which includesshape and dimensions that are used to reproduce copies of the object.

Computed axial lithography (CAL) is an additive manufacturing techniquethat improves some of the constraints of layer-by-layer 3D printing,such as speed, geometry, and surface quality. Photosensitive material isoften in the form of a liquid or viscus gel, and reacts with certainwavelengths of light causing the material to solidify. CAL techniquesbuild a 3D object by rotation of a transparent container ofphotosensitive material and simultaneously projecting a light sourceinto the material representing a slice-image of the object. As thecontainer rotates, the light projection changes to represent a nextslice-image of the object. The projected light reacts with thephotosensitive material causing the material to solidify. After the fullrotation of the container, the 3D object build is complete.

SUMMARY

Embodiments of the present invention disclose a method, computer programproduct, and system. The embodiments include a method forthree-dimensional printing of an object. The method provides for one ormore processors to receive image data of an object to print. The one ormore processors receive a position of a light-emitting robot insertedwithin photosensitive material. The one or more processors initiatemovement of the light-emitting robot within the photosensitive material.The one or more processors control navigation of the light-emittingrobot through the photosensitive material, based on continual feedbackof the position of the light-emitting robot within photosensitivematerial and the received image data of the object to print, and the oneor more processors control activation and deactivation of emitted lightof the light-emitting robot, based on the image data of the object toprint, wherein the emitted light of the light-emitting robot solidifiesthe photosensitive material.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a functional block diagram illustrating a distributed dataprocessing environment, in accordance with an embodiment of the presentinvention.

FIG. 2A is a diagram depicting details of a light emitting photo robot200, in accordance with embodiments of the present invention.

FIG. 2B is a diagram depicting solidification of photosensitive material280, in accordance with embodiments of the present invention.

FIG. 3 is a flowchart depicting operational steps of a photo roboticprogram, operating in the distributed data processing environment ofFIG. 1, in accordance with embodiments of the present invention.

FIG. 4 depicts a block diagram of components of a computing system,including a computing device configured to operationally perform thephoto robotic program of FIG. 3, in accordance with an embodiment of thepresent invention.

DETAILED DESCRIPTION

Embodiments of the present invention recognize that additivemanufacturing techniques used to print a 3D object by projecting lightinto photosensitive material are limited by the size and thickness ofthe object to be printed. Embodiments further recognize that lightpenetration into photosensitive materials will initiate solidificationof the material more quickly at the outer regions, resulting in theincomplete curing of the materials towards the center of the object. Thelimitation of light penetration into photosensitive materials limits thesize and shape of objects that can be produced by Computed axiallithography (CAL) techniques, limiting the realized benefits to printingof small objects.

Embodiments of the present invention provide a method, computer programproduct, and computer system for three-dimensional (3D) printing usingmaneuverable light-emitting robotic devices inserted in photosensitivematerial. In some embodiments of the present invention, one or moreminiaturized devices, enabled with light emitting components, areinserted into photosensitive material and are maneuvered within thephotosensitive material in a controlled and/or instructed pattern. Theone or more photo robots receive wireless signals initiating lightemitting functions within the photosensitive material, based on received3D image data of an object to build using a 3D printing technique, alsoreferred to herein as a/the object to print or object to be printed. Theemitted light is of a wavelength that solidifies the photosensitivematerial in the immediate area of the emitted light.

In some embodiments, the one or more photo robots are maneuvered by anarray of external devices producing magnetic fields that direct theferrous components of the photo robots in a predefined pattern, and theemitted light is controlled to solidify the photosensitive material in apattern duplicating the object. The light emitting miniaturized deviseare referred to, herein, as photo robotic devices, or photo robots forshort.

Embodiments of the present invention provide techniques for 3D printingof larger objects having dimensions that prevent photolithographicbuilding from light sources external to the photosensitive material. Insome embodiments, the light emitting function of the photo robotsincludes an array of light sources capable of providingmulti-directional sources of light, and controlling the intensity andfocus of emitted light. In some embodiments, a photo robot includes amicroprocessor and components capable of receiving wireless instructionsfor light emission control. In some embodiments, a photo robot includescomponents to receive power wirelessly, such as from microwaves,inductive coupling, or laser light of a wavelength not reactive to thephotosensitive material. In other embodiments, a photo robot includes arechargeable battery as a power supply to power light emission andmaneuverability.

The present invention will now be described in detail with reference tothe Figures. FIG. 1 is a functional block diagram illustrating adistributed data processing environment, generally designated 100, inaccordance with an embodiment of the present invention. FIG. 1 providesonly an illustration of one implementation and does not imply anylimitations with regard to the environments in which differentembodiments may be implemented. Many modifications to the depictedenvironment may be made by those skilled in the art without departingfrom the scope of the invention as recited by the claims.

Distributed data processing environment 100 includes scanning device110, server 120, controller 130, wireless transmitter 135, allinterconnected via network 150, as well as material container 140,magnetic array 160, photo robots 170 and print object 180. Network 150can be, for example, a local area network (LAN), a wide area network(WAN), such as the Internet, a virtual local area network (VLAN), or anycombination that can include wired, wireless, or optical connections. Ingeneral, network 150 can be any combination of connections and protocolsthat will support communications between scanning device 110, server120, wireless transmitter 135, and controller 130, in accordance withembodiments of the present invention.

Scanning device 110 is a photo imaging scanner that generates image dataof print object 180 that includes the three-dimensional profile anddimensional data of print object 180. In some embodiments, scanningdevice 110 performs a scan of print object 180 by maneuvering printobject 180 to present all three-dimensional aspects of print object 180.In other embodiments, scanning device 110 is maneuvered to scan allthree-dimensional aspects of print object 180. In some embodiments,scanning device 110 generates a plurality of scanning images in whicheach image represents a surface of print object 180. As scanningadvances to adjacent portions of the surface of print object 180, imagedata is aggregated to result in a compilation of three-dimensional data.In some embodiments, image data is reduces to an array of pixels, andthe pixels contain data values that correspond to physical features ofprint object 180. The aggregated data is received by photo roboticprogram 300 on server 120.

Controller 130 receives input from photo robotic program 300 to controlthe movement of photo robots 170 traversing the photosensitive materialcontained in container 140. In some embodiments of the presentinvention, controller 130 also transmits the received input from photorobotic program 300 to control the light emission from the trailing endsof photo robots 170 via wireless transmitter 135. In some embodiments,controller 130 is connected to magnetic array 160 and controls movementof photo robots 170 by dynamically adjusting magnetic fields of magneticarray 160, based on the received input from photo robotic program 300.Controller 130 monitors the respective positions of photo robots 170within material container 140 and sends the respective positions tophoto robotic program 300, and receives input indicating movement ofphoto robots 170 corresponding to generating a duplicate of print object180. In an example embodiment, the respective positions of photo robots170 are determined by the refection of laser light on three axis (notshown), such that the laser light is of a wavelength that does not reactwith photosensitive material 145. In another example embodiment, therespective positions of photo robots 170 are determined by use ofultrasonics (not shown).

Material container 140 is depicted as a cylindrical shape and containsphotosensitive material 145. Material container 140 is positioned withinmagnetic array 160 such that movements of photo robots 170 arecontrolled by dynamically adjusting magnetic fields from magnetic array160 interacting with ferrous components of photo robots 170. In someembodiments, material container 140 has a shape and size to accommodatebuilding of a duplicate of print object 180 within the photosensitivematerial of material container 140. Material container 140 includesphotosensitive material 145 which, in some embodiments, is a syntheticacrylate polymer, such as a gelatin state of methacrylate hydrogel.

Magnetic array 160 is a plurality of devices that produce a close-rangemagnetic field external to material container 140. Magnetic fieldsgenerated by magnetic array 160 are controlled by input received fromphoto robotic program 300 by controller 130. Magnetic array 160 producesmagnetic fields that interact with ferrous components of photo robots170 and control the direction and velocity of photo robots 170.

Photo robots 170 are miniaturized devices that are inserted inphotosensitive material 145 of material container 140 and traversephotosensitive material 145 based on magnetic fields generated bymagnetic array as controlled by input received from photo roboticprogram 300 via controller 130. In some embodiments of the presentinvention, photo robots 170 include ferrous material that reacts to amagnetic field, producing movement and controlling direction andvelocity of photo robots 170. FIG. 1 depicts a pair of photo robots asphoto robots 170. In some embodiments, the quantity of photo robots 170inserted into photosensitive material 145 is based on the size of printobject 180, including a larger quantity of photo robots for a largerobject to print. In other embodiments, a single photo robot may beutilized to exercise finer control over detail associated with printingof an object.

Photo robots 170 include a light emission source positioned at atrailing end and configured to control attributes of the emitted light,such as direction, intensity and focus. Photo robots 170 include amicroprocessor and a transmission receiver to receive and processsignals initiating light emission. Photo robots 170 receive wirelesssignals from controller 130, which receives input from photo roboticprogram 300. The wireless signals received by photo robots 170 controlactivation and deactivation of light emission, as well as direction, andfocus of the emitted light. In some embodiments, photo robots 170receive wireless transmission of power for light emission, such as frommicrowaves, inductive coupling, or laser light of a wavelength notreactive to the photosensitive material. In other embodiments, a photorobot includes a rechargeable battery to power light emissions, and inyet other embodiments, the rechargeable battery provides power to photorobots 170 for maneuverability. Discussion of FIG. 2 includes additionaldetails of photo robots 170.

Print object 180 represents a larger object intended for duplication byphotosensitive material techniques. Current techniques of 3D printing byphotosensitive material techniques are limited to producing small“centimeter sized” objects due to external emission of light sourcessolidifying the outer regions of photosensitive material in a containerprior to material in a central region completing solidification.Embodiments of the present invention enable duplication of print object180 by inserting photo robots 170 within photosensitive material 145 andgenerating light emissions from the trailing ends of photo robots 170 tosolidify photosensitive material 145.

Server 120 is depicted as connected to scanning device 110 andcontroller 130 via network 150, and including photo robotic program 300.In some embodiments of the present invention, server 120 represents avirtual computing device operating across multiple computers as a serversystem, such as in a cloud computing environment, and provides accessand connectivity of client device 110 to authentication program 300 andother function and resources residing on server 120, via network 150.

In some embodiments, server 120 can be a web server, a blade server, adesktop computer, a laptop computer, a tablet computer, a netbookcomputer, or any other programmable electronic computing device capableof receiving, sending, and processing data, and communicating withscanning device 110 and controller 130, and other computing devices (notshown) within distributed data processing environment 100 via network150. In another embodiment, server 120 represents a computing systemutilizing clustered computers and components (e.g., database servercomputers, application server computers, etc.) that act as a single poolof seamless resources when accessed within distributed data processingenvironment 100. Server 120 may include internal and external hardwarecomponents, as depicted in more detail and described in FIG. 4.

Photo robotic program 300 is depicted as hosted and operating fromserver 120. In example embodiments of the present invention, photorobotic program 300 receives image data of print object 180 fromscanning device 110. The image data received by photo robotic program300 is transposed into 3D data representing aggregate slices or layersof the scans taken of print object 180 by 3D printing techniques. Photorobotic program 300 sends instruction to controller 130 includingposition, direction, and movement of photo robots 170, and instructionfor activation and deactivation of lights within light emitting arraysof photo robots 170.

In some embodiments, photo robotic program 300 includes instruction formagnetic array 160, executed by controller 130, and receives respectivepositions of photo robots 170 based on detection data received bycontroller 130 and sent to photo robotic program 300 as feedback. Inother embodiments, photo robotic program 300 sends position, direction,and velocity instruction to controller 130 and, in response, controller130 adjusts the magnetic fields of magnetic array 160 to attain theinstructed position, direction and velocity of photo robots 170. In someembodiments, photo robotic program 300 sends controller 130 instructionsfor activation and deactivation of the light arrays of photo robots 170as well as instruction to control direction, focus, intensity, andduration of emitted light, solidifying the photosensitive material inpositions corresponding to the profile and dimensions of print object180.

FIG. 2A is a diagram depicting details of a light emitting photo robot200, in accordance with embodiments of the present invention. In oneembodiment of the present invention, photo robot 200 includesmicroprocessor and transceiver 205, power source 210, optionalpropulsion motor 215, propulsion arm 230, light array 220, andindividual light 225.

Microprocessor and transceiver 205 enables photo robot 200 to receivewireless instruction from photo robotic program 300 via controller 130,controlling the emission of light from light array 220. Microprocessorand transceiver 205 receive signals to activate and deactivate lightswithin light array 220 in a pattern consistent with solidification ofphotosensitive material to generate a three-dimensional object. In someembodiments, microprocessor and transceiver 205 are separate componentsof photo robot 200 (not shown). In some embodiments, photo robot 200operates autonomously, based on microprocessor and transceiver 205receiving and processing wireless control instructions to maneuver photorobot 200 within the photosensitive material by operating propulsionmotor 215 to engage propulsion arm 230.

In some embodiments of the present invention, the structural shape ofphoto robot 200 is elliptical or other fluid-dynamic shape enablingphoto robot 200 to move through the photo sensitive material withminimal resistance. In some embodiments, the anterior portion of photorobot 200 includes a magnetic material, such as iron, nickel, cobalt oralloys of rare earth metals. The magnetic component enables propulsionand navigation control of photo robot 200 by close-range magneticfields, such as those produced by controller 130 operating magneticarray 160 (FIG. 1). In other embodiments, photo robot 200 includespropulsion motor 215 and propulsion arm 230 enabling self-poweredmovement of photo robot 200 through the photosensitive material. Inembodiments of the present invention, the velocity of photo robot 200 isbased on a property of the reactive rate of the photosensitive materialto the emitted light and includes light intensity as an additionalfactor.

In one embodiment power source 210 provides power for microprocessor andtransceiver 205 and light array 220. In some embodiments, power source210 includes a rechargeable battery as an autonomous source of power. Instill other embodiments, power source 210 receives power wirelessly froman external source.

In some embodiments of the present invention, light array 220 ispositioned at the posterior end of photo robot 200, and includes aplurality of individual lights, such as individual light 225, each ofwhich emits light in a designated direction. In some embodiments,individual light 225 is activated and deactivated independent of otherlights of light array 220. Light array 220 of photo robot 200 enablesmulti-directional emission of light within the photosensitive material,and the array structure of light array 220 enables the ability toproject both a focused direction of light and a broad distribution oflight. In some embodiments, the light emitted by light array 220 isfocused by an orifice on light array 220 of the photo robot 200. In someembodiments, light array 220 includes a single high intensity lightsource, and directional control of emitted light is performed by openingand closing of shutters in light array 220. Embodiments of the presentinvention include emission of light of a wavelength corresponding toinitiating solidification of the photosensitive material, and the rateof solidification is based on the duration of exposure and the intensityof the emission of light within the photosensitive material to theemission of, for example the emission of light from light array 220 mayhave a wavelength in an ultraviolet range.

FIG. 2B is a diagram depicting solidification of photosensitive material280, in accordance with embodiments of the present invention. Inembodiments of the present invention, photo robot 250 and photo robot252 are inserted in photosensitive material 280 at an initial position,and a continuous tracking technique provides position information tophoto robotic program 300. Photo robotic program 300 activates theemission of light from light array 255 of photo robot 250 and lightarray 256 of photo robot 252, based on image data corresponding to theobject to be printed. Photo robotic program 300 guides the movement ofphoto robots 250 and 252. While moving, photo robots 250 and 252 receivesignals to activate and deactivate the emission of light from lightarrays 255 and 256, respectively. In some embodiments, the intensity andfocus of emitted light is programmatically controlled by photo roboticprogram 300. The emission of light from light array 255 createssolidification path 260, and the emission of light from light array 256creates solidification paths 265 and 270. The deactivation of light fromlight array 256 of photo robot 252 results in non-solidified section275, separating solidification paths 265 and 270.

FIG. 3 is a flowchart depicting operational steps of a photo-roboticprogram 300, operating in distributed data processing environment 100 ofFIG. 1, in accordance with embodiments of the present invention. Inembodiments of the present invention, a container of photosensitivematerial of size and volume adequate to contain a duplicate of thetarget item for 3D printing is filled with an appropriate amount ofphotosensitive material. The photosensitive material is a liquid-gelmaterial having a liquid viscosity allowing traversal of photo robotsthrough the photosensitive material. The photosensitive material reactsto the emission of light of a particular wavelength by solidifying.

Photo robotic program 300 receives the initial position of the photorobots inserted into the photosensitive material (step 305). One or morephoto robots are inserted into the photosensitive material. In someembodiments of the present invention, photo robotic program 300determines the quantity of photo robots and calculates time estimate toprint of the object, based on the size, dimensions, and a determinationof the volume of the object to print. Photo robotic program 300generates an instruction indicating the placement of the determinedquantity of light-emitting robots into the photosensitive material. Inother embodiments, external sources and methods may be used to determinethe quantity of photo robots to insert into the photosensitive material.

In some embodiments, the inserted photo robots are placed in a positionwithin the photosensitive material designated as an initial position. Inother embodiments, the photo robots are inserted randomly and thestarting position of the respective photo robots is detected by atracking device of controller 130 (FIG. 1) and the respective initialpositions are transmitted to photo robotic program 300. In oneembodiment, optical sensors of controller 130 track the positions of thephoto robots. In another embodiment, sonar-type sensors of controller130 can track the positions of the photo robots.

Photo robotic program 300 receives 3D image data of the object to print(step 310). Photo robotic program 300 receives the scanned image data ofthe object to print, and then analyzes and transposes the scanned imagedata into an aggregate of layers of pixelated data. The data includespositions within the photosensitive material at which the lightemissions of the photo robots are activated and positions at which thelight emissions are deactivated.

For example, scanning device 110 generates 3D image data of print object180, which may include rotating or moving print object 180 or movementof scanning device 110 to generate an aggregate three-dimensional imagerepresentation of print object 180. Photo robotic program 300 receivesthe scanned image data of print object 180 from scanning device 110.Photo robotic program 300 analyzes the data and generates pixelated datarepresenting positions within the photosensitive material at which lightemissions of photo robots are activated, and positions at which lightemissions are deactivated.

Photo robotic program 300 navigates photo robots through thephotosensitive material based on the 3D image data of the object toprint (step 315). Photo robotic program 300 sends instructions to thephoto robot controller to move the photo robots in a designateddirection and velocity. In some embodiments, the velocity of navigatingphoto robots through the photosensitive material is predetermined, basedon the solidification rate of the material as the material is exposed tolight emissions of a particular wavelength from the photo robots. Insome embodiments, the photo robots are moved through the photosensitivematerial by controlled magnetic fields generated around the container ofthe photosensitive material acting on magnetic material of the photorobots. Photo robotic program 300 navigates the photo robots in adesignated direction and at a designated velocity to build the object toprint, based on the received image data of the object.

For example, photo robotic program 300 sends instructions to controller130 to navigate photo robots 170 in respective designated directions andat a pre-determined velocity. Controller 130 generates magnetic fieldsfrom magnetic array 160 to move photo robots 170 in the respectivedesignated directions and velocity. In some embodiments, controller 130tracks the positions of photo robots 170 and sends the positioninformation to photo robotic program 300 as feedback, and photo roboticprogram 300 returns instructions to controller 130 based on the receivedfeedback of the positions of photo robots 170. In some embodiments,photo robots 170 include propulsion capability and navigate utilizingreceived instructions from photo robotic program 300.

Photo robotic program 300 activates light emission of photo robots basedon the 3D image data of the object to print (step 320). Photo roboticprogram 300 navigates the photo robots through the photosensitivematerial by transmitted instructions of direction and velocity.Additionally, photo robotic program 300 transmits signals to the photorobots to activate and deactivate light emission from the light arraycomponent of the photo robots, based on the received image data of theobject to print. Photo robotic program 300 activates light from thelight array of the photo robots to solidify the photosensitive materialat positions corresponding to the structure of the object to print, anddeactivates the light array at positions to remain un-solidified, whichdo not correspond to the structure of the object to print.

Photo robotic program 300 determines whether the printing of the objectto print is complete (decision step 325). Photo robotic program 300continues to transmit instruction to the photo robot controller to move,navigate, and activate light emissions from the photo robots within thephotosensitive material. Photo robotic program 300 determines completionof the printing of the object subsequent to the transmission of thereceived image data of the object to the controller of the photo robotsand the feedback that the photo robots have completed the navigation andlight activation corresponding to the transmitted instructions.

For the case in which photo robotic program 300 determines that theprinting of the object is not complete (step 325, “NO” branch), photorobotic program 300 returns to step 320 and continues to activate lightemissions of the photo robots based on the 3D image data of the objectto print, and continues as described above.

For the case in which photo robotic program 300 determines that theprinting is complete (step 325, “YES” branch), photo robotic program 300navigates photo robots to an exit position within the photosensitivematerial (step 330). In some embodiments of the present invention, photorobotic program 300 receives continual feedback regarding the positionsof the photo robots within the photosensitive material. Subsequent todetermining the printing of the object to be complete, photo roboticprogram 300 provides instruction to the controller directing the photorobots to a predetermined recovery position within the container of thephotosensitive material. Having positioned the photo robots to an exitposition, photo robotic program 300 ends.

For example, photo robotic program 300 transmits instructions tocontroller 130 (FIG. 1) via network 150 directing photo robots 170within container 140, based on the image data of print object 180,received from scanning device 110. Photo robotic program 300 determinesthat the printing of the object is complete, based on transmission ofthe instructions associated with all the received image data of printobject 180. Photo robotic program 300 receives position informationassociated with photo robots 170 from controller 130 and calculates thenavigation to direct the photo robots to respective recovery positions.Photo robotic program 300 transmits the instructions to controller 130to navigate photo robots 170 to the respective recovery positions, andends.

FIG. 4 depicts a block diagram of components of a computing system,including computing device 405, configured to include or operationallyconnect to components depicted in FIG. 1, and with the capability tooperationally perform photo-robotic program 300 of FIG. 3, in accordancewith an embodiment of the present invention.

Computing device 405 includes components and functional capabilitysimilar to components of server 120, (FIG. 1), in accordance with anillustrative embodiment of the present invention. It should beappreciated that FIG. 3 provides only an illustration of oneimplementation and does not imply any limitations with regard to theenvironments in which different embodiments may be implemented. Manymodifications to the depicted environment may be made.

Computing device 405 includes communications fabric 402, which providescommunications between computer processor(s) 404, memory 406, persistentstorage 408, communications unit 410, an input/output (I/O) interface(s)412. Communications fabric 402 can be implemented with any architecturedesigned for passing data and/or control information between processors(such as microprocessors, communications, and network processors, etc.),system memory, peripheral devices, and any other hardware componentswithin a system. For example, communications fabric 402 can beimplemented with one or more buses.

Memory 406, cache memory 416, and persistent storage 408 arecomputer-readable storage media. In this embodiment, memory 406 includesrandom access memory (RAM) 414. In general, memory 406 can include anysuitable volatile or non-volatile computer-readable storage media.

In one embodiment, photo robotic program 300 is stored in persistentstorage 408 for execution by one or more of the respective computerprocessors 404 via one or more memories of memory 406. In thisembodiment, persistent storage 408 includes a magnetic hard disk drive.Alternatively, or in addition to a magnetic hard disk drive, persistentstorage 408 can include a solid-state hard drive, a semiconductorstorage device, read-only memory (ROM), erasable programmable read-onlymemory (EPROM), flash memory, or any other computer-readable storagemedia that is capable of storing program instructions or digitalinformation.

The media used by persistent storage 408 may also be removable. Forexample, a removable hard drive may be used for persistent storage 408.Other examples include optical and magnetic disks, thumb drives, andsmart cards that are inserted into a drive for transfer onto anothercomputer-readable storage medium that is also part of persistent storage408.

Communications unit 410, in these examples, provides for communicationswith other data processing systems or devices, including resources ofdistributed data processing environment 100. In these examples,communications unit 410 includes one or more network interface cards.Communications unit 410 may provide communications through the use ofeither or both physical and wireless communications links. Photo roboticprogram 300 may be downloaded to persistent storage 308 throughcommunications unit 410.

I/O interface(s) 412 allows for input and output of data with otherdevices that may be connected to computing system 400. For example, I/Ointerface 412 may provide a connection to external devices 418 such as akeyboard, keypad, a touch screen, and/or some other suitable inputdevice. External devices 418 can also include portable computer-readablestorage media such as, for example, thumb drives, portable optical ormagnetic disks, and memory cards. Software and data used to practiceembodiments of the present invention, e.g., photo robotic program 300can be stored on such portable computer-readable storage media and canbe loaded onto persistent storage 408 via I/O interface(s) 412. I/Ointerface(s) 412 also connects to a display 420.

Display 420 provides a mechanism to display data to a user and may, forexample, be a computer monitor.

The programs described herein are identified based upon the applicationfor which they are implemented in a specific embodiment of theinvention. However, it should be appreciated that any particular programnomenclature herein is used merely for convenience, and thus theinvention should not be limited to use solely in any specificapplication identified and/or implied by such nomenclature.

The present invention may be a system, a method, and/or a computerprogram product at any possible technical detail level of integration.The computer program product may include a computer-readable storagemedium (or media) having computer-readable program instructions thereonfor causing a processor to carry out aspects of the present invention.

The computer-readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer-readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer-readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer-readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer-readable program instructions described herein can bedownloaded to respective computing/processing devices from acomputer-readable storage medium or to an external computer or externalstorage device via a network, for example, the Internet, a local areanetwork, a wide area network and/or a wireless network. The network maycomprise copper transmission cables, optical transmission fibers,wireless transmission, routers, firewalls, switches, gateway computersand/or edge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer-readable programinstructions for storage in a computer-readable storage medium withinthe respective computing/processing device.

Computer-readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine-dependent instructions, microcode, firmware instructions,state-setting data, configuration data for integrated circuitry, oreither source code or object code written in any combination of one ormore programming languages, including an object-oriented programminglanguage such as Smalltalk, C++, or the like, and procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The computer-readable program instructions may executeentirely on the user's computer, partly on the user's computer, as astand-alone software package, partly on the user's computer and partlyon a remote computer or entirely on the remote computer or server. Inthe latter scenario, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider). In some embodiments, electronic circuitry including,for example, programmable logic circuitry, field-programmable gatearrays (FPGA), or programmable logic arrays (PLA) may execute thecomputer-readable program instructions by utilizing state information ofthe computer-readable program instructions to personalize the electroniccircuitry, in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer-readable program instructions may be provided to aprocessor of a computer, or other programmable data processing apparatusto produce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks. Thesecomputer-readable program instructions may also be stored in acomputer-readable storage medium that can direct a computer, aprogrammable data processing apparatus, and/or other devices to functionin a particular manner, such that the computer-readable storage mediumhaving instructions stored therein comprises an article of manufactureincluding instructions which implement aspects of the function/actspecified in the flowchart and/or block diagram block or blocks.

The computer-readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce acomputer-implemented process, such that the instructions which executeon the computer, other programmable apparatus, or other device implementthe functions/acts specified in the flowchart and/or block diagram blockor blocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the blocks may occur out of theorder noted in the Figures. For example, two blocks shown in successionmay, in fact, be accomplished as one step, executed concurrently,substantially concurrently, in a partially or wholly temporallyoverlapping manner, or the blocks may sometimes be executed in thereverse order, depending upon the functionality involved. It will alsobe noted that each block of the block diagrams and/or flowchartillustration, and combinations of blocks in the block diagrams and/orflowchart illustration, can be implemented by special purposehardware-based systems that perform the specified functions or acts orcarry out combinations of special purpose hardware and computerinstructions.

What is claimed is:
 1. A method for three-dimensional printing of anobject, the method comprising: receiving, by one or more processors,image data of an object to print; receiving, by the one or moreprocessors, a position of a light-emitting robot inserted withinphotosensitive material; initiating, by the one or more processors,movement of the light-emitting robot within the photosensitive material;controlling, by the one or more processors, navigation of thelight-emitting robot through the photosensitive material, based oncontinual feedback of the position of the light-emitting robot withinthe photosensitive material and the image data of the object to print;and controlling, by the one or more processors, activation anddeactivation of emitted light of the light-emitting robot, based on theimage data of the object to print, wherein the emitted light of thelight-emitting robot solidifies the photosensitive material.
 2. Themethod of claim 1, further comprising: controlling, by the one or moreprocessors, attributes of the emitted light of the light-emitting robot,wherein the attributes of the emitted light include combinationsselected from the group consisting of focus, intensity, and direction ofthe emitted light; and controlling, by the one or more processors, avelocity of the light-emitting robot navigated through thephotosensitive material, based on a predetermined property ofsolidification of the photosensitive material by exposure to the emittedlight.
 3. The method of claim 1, wherein the emitted light of thelight-emitting robot includes light of an ultraviolet wavelength.
 4. Themethod of claim 1, wherein the light-emitting robot receives wirelesslytransmitted power.
 5. The method of claim 1, wherein the light-emittingrobot includes a self-contained power supply.
 6. The method of claim 1,wherein controlling the navigation of the light-emitting robot throughthe photosensitive material further comprises: controlling, by the oneor more processors, generation of a plurality of magnetic fieldsinteracting with magnetic material of the light-emitting robot; andadjusting, by the one or more processors, the generation of theplurality of magnetic fields, based on the image data of the object toprint.
 7. The method of claim 1, wherein activation and deactivation oflight emission of the light-emitting robot, based on the image data ofthe object to print, includes controlling a focus of the emitted lightby an orifice of an array of lights of the light-emitting robot.
 8. Themethod of claim 1, wherein the light emission from the light-emittingrobot includes an array of lights at a trail end of the light-emittingrobot.
 9. The method of claim 1, further comprising: determining, by theone or more processors, a quantity of light-emitting robots to insertinto the photosensitive material, based on dimensions and size of theobject to print; and generating, by the one or more processors, aninstruction regarding placement of the quantity of light-emitting robotsinto the photosensitive material.
 10. The method of claim 1, wherein thenavigation of the light-emitting robot is based on a self-containedpropulsion device and receipt of wireless control instructions.
 11. Themethod of claim 1, wherein controlling the activation and thedeactivation of light emission of the light-emitting robot comprises:controlling, by the one or more processors, a focus, a direction, and aduration of the emitted light.
 12. A computer system for,three-dimensional printing of an object, the computer system comprising:one or more computer processors; one or more computer-readable storagemedia; program instructions stored on the one or more computer-readablestorage media, the program instructions comprising: program instructionsto receive image data of an object to print; program instructions toreceive a position of a light-emitting robot inserted withinphotosensitive material; program instructions to initiate movement ofthe light-emitting robot within the photosensitive material; programinstructions to control navigation of the light-emitting robot throughthe photosensitive material, based on continual feedback of the positionof the light-emitting robot within the photosensitive material and theimage data of the object to print; and program instructions to controlactivation and deactivation of emitted light of the light-emittingrobot, based on the image data of the object to print, wherein theemitted light of the light-emitting robot solidifies the photosensitivematerial.
 13. The computer system of claim 12, wherein the emitted lightof the light-emitting robot includes light of an ultraviolet wavelength.14. The computer system of claim 12, wherein the light-emitting robotincludes a self-contained power supply.
 15. The computer system of claim12, wherein the program instructions to control the navigation of thelight-emitting robot through the photosensitive material furthercomprise: controlling, by the one or more processors, generation of aplurality of magnetic fields interacting with magnetic material of thelight-emitting robot; and adjusting, by the one or more processors, thegeneration of the plurality of magnetic fields, based on the image dataof the object to print.
 16. The computer system of claim 12, wherein theactivation and the deactivation of light emission of the light-emittingrobot, based on the image data of the object to print, includes programinstructions to control a focus of the emitted light by an orifice of anarray of lights of the light-emitting robot.
 17. The computer system ofclaim 12, wherein the navigation of the light-emitting robot is based ona self-contained propulsion device and receipt of wireless controlinstructions.
 18. A computer program product for three-dimensionalprinting of an object, the computer program product comprising: one ormore computer-readable storage media; program instructions stored on theone or more computer-readable storage media, the program instructionscomprising: program instructions to receive image data of an object toprint; program instructions to receive a position of a light-emittingrobot inserted within photosensitive material; program instructions toinitiate movement of the light-emitting robot within the photosensitivematerial; program instructions to control navigation of thelight-emitting robot through the photosensitive material, based oncontinual feedback of the position of the light-emitting robot withinthe photosensitive material and the image data of the object to print;and program instructions to control activation and deactivation ofemitted light of the light-emitting robot, based on the image data ofthe object to print, wherein the emitted light of the light-emittingrobot solidifies the photosensitive material.
 19. The computer system ofclaim 18, wherein program instructions to control the navigation of thelight-emitting robot through the photosensitive material furthercomprises: program instructions to control a generation of a pluralityof magnetic fields interacting with magnetic material of thelight-emitting robot; and program instructions to adjust the generationof the plurality of magnetic fields, based on the image data of theobject to print.
 20. The computer system of claim 18, furthercomprising: program instructions to control attributes of the emittedlight of the light-emitting robot, wherein the attributes of the emittedlight include combinations selected from the group consisting of focus,intensity, and direction of the emitted light; and program instructionsto control a velocity of the light-emitting robot navigated through thephotosensitive material, based on a predetermined property ofsolidification of the photosensitive material by exposure to the emittedlight.